Sitecore WaitForLanguages module allows administrators to setup workflow in such a way that an Item cannot be moved to a new state until all language versions of the Item are in a certain workflow state.
Such functionality allows modifying the default behavior when all language versions have separate independent workflows.